package com.caojm.mptools.client.commands;

import com.caojm.mptools.Mptools;
import com.caojm.mptools.client.MptoolsClient;
import com.caojm.mptools.client.utils.DatabaseHelper;
import net.minecraft.server.command.CommandManager;
import net.minecraft.server.command.ServerCommandSource;
import net.minecraft.text.Text;

public class StatusCommand {

    // 注册命令
    public static void register(){

            // 注册 '/mp status' 命令
            CommandManager.literal("mp")
                    .then(CommandManager.literal("status")  // 定义查看状态命令
                            .executes(context -> {
                                ServerCommandSource source = context.getSource();  // 获取命令来源（玩家）
                                String playerName = source.getName();  // 获取玩家名称

                                // 检查玩家是否已绑定账号
                                String websiteAccount = DatabaseHelper.getAccount(playerName);

                                if (websiteAccount != null && !websiteAccount.isEmpty()) {
                                    // 如果玩家已经绑定，输出绑定状态
                                    source.sendFeedback(() -> Text.of("玩家 " + playerName + " 已绑定官网账号: " + websiteAccount), false);
                                    MptoolsClient.LOGGER.info("玩家 " + playerName + " 已绑定官网账号: " + websiteAccount);
                                } else {
                                    // 如果玩家没有绑定，返回未绑定状态
                                    source.sendFeedback(() -> Text.of("玩家 " + playerName + " 尚未绑定官网账号。"), false);
                                    Mptools.LOGGER.info("玩家 " + playerName + " 尚未绑定账号。");
                                }

                                return 1;  // 命令成功执行
                            })
                    ).build();
        }
    }

